package com.pactera.madp.cp.api.bo;

import lombok.Data;

import java.util.List;

@Data
public class SyncOrgInfoBo implements Cloneable{

    /**
     * 机构ID
     */
    private String id;
    /**
     * 机构treeId
     */
    private String treeId;
    /**
     * 主管机构
     */
    private String orgGroupCode;
    /**
     * 机构类别
     */
    private String orgType;
    /**
     * 机构名称
     */
    private String orgName;
    /**
     * 机构号
     */
    private String orgCode;
    /**
     * 机构级别
     */
    private String orgLev;
    /**
     * 机构地址
     */
    private String orgAddr;
    /**
     * 邮政编码
     */
    private String orgZcode;
    /**
     * 注册地址
     */
    private String regAddr;
    /**
     * 电话号码
     */
    private String tel;
    /**
     * 机构负责人
     */
    private String orgOwnerPer;
    /**
     * 机构排序
     */
    private String orgOrderBy;
    /**
     * 逻辑删除机构标志
     */
    private String delOrgFlag;
    /**
     * 人员编制
     */
    private String psnPreparation;
    /**
     * 实有人数
     */
    private String realPerNum;
    /**
     * 超编人数
     */
    private String morePreparationPer;
    /**
     * 缺编人数
     */
    private String lessPreparationPer;
    /**
     * 是否被管辖行
     */
    private String isManagerBank;
    /**
     * 主管领导
     */
    private String cmptLeader;
    /**
     * 管辖行
     */
    private String managerBank;
    /**
     * 机构属性
     */
    private String orgAttr;
    /**
     * 职责(经营范围)
     */
    private String orgDuty;
    /**
     * 股权控股性质(废除)
     */
    private String stockHoldProp;
    /**
     * 条线关系上级
     */
    private String lineRelHigh;
    /**
     * 条线关系treeId
     */
    private String lineRelTreeid;
    /**
     * 内设机构双跨机构(废除)
     */
    private String innerOrg;
    /**
     * 在双跨机构下所对应的treeId
     */
    private String doubleOrgTreeid;
    /**
     * 机构所在行政区划
     */
    private String orgProCode;
    /**
     * 营业状态
     */
    private String govnStat;
    /**
     * 合同工编制人数
     */
    private String contPreparationPer;
    /**
     * 合同工实有人数
     */
    private String contRealPer;
    /**
     * 合同工超编人数
     */
    private String contMorePer;
    /**
     * 合同工缺编人数
     */
    private String contLessPer;
    /**
     * 派遣工编制人数
     */
    private String outPreparationPer;
    /**
     * 派遣工实有人数
     */
    private String outRealPer;
    /**
     * 派遣工超编人数
     */
    private String outMorePer;
    /**
     * 派遣工缺编人数
     */
    private String outLessPer;
    /**
     * 最近相邻分支机构
     */
    private String branOrg;
    /**
     * 最近相邻分支机构距离（米）
     */
    private String branOrgAddr;
    /**
     * 机构地址区域类别
     */
    private String orgAddrType;
    /**
     * 关联机构编号
     */
    private String relOrgNo;
    /**
     * 机构分类
     */
    private String orgKind;
    /**
     * 银行机构代码
     */
    private String bankOrgCd;
    /**
     * 内部机构号
     */
    private String orgId;
    /**
     * 工作开始时间
     */
    private String workBeginTime;
    /**
     * 工作结束时间
     */
    private String workEndTime;
    /**
     * 网点号
     */
    private String branchNo;

    // 机构临时处理子列表
    private List<SyncOrgInfoBo> childList;

    @Override
    public SyncOrgInfoBo clone() {
        try {
            return (SyncOrgInfoBo) super.clone();
        } catch (CloneNotSupportedException e) {
            e.printStackTrace();
        }
        return new SyncOrgInfoBo();
    }

}
